package com.young.monitor.service;

import com.young.common.util.Page;
import com.young.monitor.model.ApiIndex;
import com.young.monitor.model.ApiIndexStatSearch;

import java.util.List;

/**
* api监控指标服务接口
* Created by imrookie on 2019-7-2.
*/
public interface IApiIndexService {

    /**
     * 查询
     * @param obj
     * @return
     */
    List<ApiIndex> getList(ApiIndex obj);

    /**
     * 分页查询
     * @param obj
     * @param page
     * @return
     */
    List<ApiIndex> getPage(ApiIndex obj, Page page);

    /**
     * 查询单条
     * @param id
     * @return
     */
    ApiIndex get(Long id);

    /**
     * 统计数量
     * @param obj
     * @return Integer 满足xx条件的数据有多少条
     */
    int count(ApiIndex obj);

    /**
     * 修改
     * @param obj
     * @return
     */
    int update(ApiIndex obj);

    /**
     * 删除
     * @param id
     * @return
     */
    int delete(Long id);

    /**
     * 批量删除
     * @param idArr
     * @return
     */
    int delete(Long[] idArr);

    /**
     * 插入
     * @param obj
     * @return
     */
    int insert(ApiIndex obj);

    /**
     * 批量插入
     * @param list
     * @return
     */
    int batchInsert(List<ApiIndex> list);

    /**
     * 获取接口指标统计数据
     * @param apiIndexStatSearch 统计条件
     * @return
     */
    List<ApiIndex> getApiIndexStat(ApiIndexStatSearch apiIndexStatSearch);

}